Ext.define('AppTableRsyncForm', {
	extend : 'Ext.window.Window',
	id : 'AppTableRsyncForm',
	layout : 'fit',
	modal : true,
	title : '数据同步详情',
	height : 340,
	width : 500,
	maximizable : true,
	buttonAlign : 'center',

	initComponent : function() {
		this.formPanel = new Ext.form.Panel({
			layout : {
				type : 'table',
				columns : 1
			},
			bodyStyle : 'padding:10px',
			border : true,
			autoScroll : true,
			defaults : {
				labelWidth : 80,
				width : '100%',
				labelAlign : 'right',
				allowBlank : false,
				xtype : 'textfield'
			},
			items : [{
						fieldLabel : '所属表',
						xtype : 'fieldcontainer',
						layout : 'hbox',
						items : [{
									xtype : 'textfield',
									readOnly : true,
									allowBlank : false,
									width : 320,
									name : 'appTableRsync.table.name'
								}, {
									margin : '0 0 0 5',
									xtype : 'button',
									text : '选 择',
									scope : this,
									iconCls : 'btn-select',
									handler : function() {
										var fp = this.formPanel;
										var tid = fp
												.getCmpByName('appTableRsync.table.oid')
												.getValue();
										AppTableSelector.getView(
												function(ids, codes, names) {
													fp.getCmpByName('appTableRsync.table.oid')
															.setValue(ids);
													fp.getCmpByName('appTableRsync.table.name')
															.setValue(names);
												}, true).show();
									}
								}]
					},{
						fieldLabel : '数据来源表',
						name : 'appTableRsync.rsyncTableName',
						maxLength : 100
					},{
						fieldLabel : '同步方式',
						name : 'appTableRsync.type',
						xtype : 'combo',
						editable : false,
						triggerAction : 'all',
						store : [['1','增量'],['2','全量']]					
					}, {
						fieldLabel : '序号',
						name : 'appTableRsync.sn',
						xtype : 'numberfield',
						value: 1
					},{
						fieldLabel : '是否启用',
						name : 'appTableRsync.state',
						xtype : 'combo',
						editable : false,
						triggerAction : 'all',
						store : [['0','禁用'],['1','启用']],
						value: 1
					},{
						fieldLabel : '备注',
						name : 'appTableRsync.note',
						xtype : 'textarea',
						allowBlank : true
					},{
						name : 'appTableRsync.table.oid',
						xtype : 'hidden'
					}, {
						name : 'appTableRsync.oid',
						xtype : 'hidden',
						value : this.sid == null ? '' : this.sid
					}]
		});

		this.buttons = [{
					text : '保存',
					iconCls : 'btn-save',
					scope : this,
					handler : this.save
				}, {
					text : '关闭',
					iconCls : 'btn-cancel',
					scope : this,
					handler : this.cancel
				}];

		this.items = [this.formPanel];
		this.callParent();

		// 加载表单对应的数据
		if (this.sid) {
			this.formPanel.loadData({
						url : __ctxPath + '/comm/getAppTableRsync.do?oid=' + this.sid,
						root : 'data',
						preName : 'appTableRsync'
			});
		}
	},
	// 取消
	cancel : function() {
		this.close();
	},
	// 保存记录
	save : function() {
		$postForm({
					formPanel : this.formPanel,
					scope : this,
					url : __ctxPath + '/comm/saveAppTableRsync.do',
					callback : function(fp, action) {
						var gridPanel = Ext.getCmp('AppTableRsyncGrid');
						if (gridPanel != null) {
							gridPanel.getStore().reload();
						}
						this.close();
					}
				});
	}
});
